/*
 * AStarPathFinding Library - Copyright (c) Muhammad Ahmed - quteahmed@gmail.com
 * 
 * This software is provided 'as-is', without any express or
 * implied warranty. In no event will the authors be held
 * liable for any damages arising from the use of this software.
 * 
 * Permission is granted to anyone to use this software for any purpose,
 * including commercial applications, and to alter it and redistribute
 * it freely, subject to the following restrictions:
 * 
 * 1. The origin of this software must not be misrepresented;
 * you must not claim that you wrote the original software.
 * If you use this software in a product, an acknowledgment
 * in the product documentation would be appreciated but
 * is not required.
 * 
 * 2. Altered source versions must be plainly marked as such,
 * and must not be misrepresented as being the original software.
 * 
 * 3. This notice may not be removed or altered from any
 * source distribution.
 */
package com.astar.library;

import java.util.Comparator;
import java.util.PriorityQueue;


public class BinaryHeap extends PriorityQueue<Node> {
	
	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	


	public static class NodeCostComparator implements Comparator<Node> {

		@Override
		public int compare(Node object1, Node object2) {
			if(object1.getF() > object2.getF()) {
				return 1;
			}
			else if(object1.getF() == object2.getF()) {
				return 0;
			}
			else if(object1.getF() < object2.getF()) {
				return -1;
			}else{
				return 0;
			}
			
		}
		
	}
	private final static int DEFAULT_CAPACITY = 13;
	private static final NodeCostComparator mComparator = new NodeCostComparator();
	
	public BinaryHeap() {
		super(DEFAULT_CAPACITY, mComparator);
	}


	
}